import { createApp } from 'vue'

import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'
import * as ElementPlusIconsVue from '@element-plus/icons-vue'

import router from './router/router.js'

import { createPinia } from 'pinia'

import ECharts from 'vue-echarts'

import './style.css'
import App from './App.vue'

import webSocketService from './utils/user-group-chat/webSocket.js'



// 创建Vue应用实例并配置相关插件和组件
// 1. 创建Vue应用实例
// 2. 初始化Pinia状态管理
// 3. 注册ElementPlus UI组件库
// 4. 注册路由管理器
// 5. 注册Pinia状态管理器
// 6. 全局注册ECharts图表组件
// 7. 挂载应用到DOM元素
const app = createApp(App)
const pinia = createPinia()
app.use(ElementPlus)
for (const [key, component] of Object.entries(ElementPlusIconsVue)) {
  app.component(key, component)
}
app.use(router)
app.use(pinia)
app.component('v-chart', ECharts) // 注册为组件
app.mount('#app')

